home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / archives / com / internet / stik / gls002b5.zoo / pipe.h < prev    next >
C/C++ Source or Header  |  1997-02-16  |  2KB  |  69 lines

  1. #ifndef PIPE_H
  2. #define PIPE_H
  3.  
  4. #include <types.h>
  5. #include "drivers.h"
  6. #include "transprt.h"
  7.  
  8.  
  9. typedef union {
  10.   struct { int op; } common;
  11.   struct { int op; uint32 hostaddr; int16 port; int16 tos; uint16 obsize; }
  12.     P_TCP_open;
  13.   struct { int op; int16 fd; int16 timeout; } P_TCP_close;
  14.   struct { int op; int16 fd; char *buf; int16 buflen; } P_TCP_send;
  15.   struct { int op; int16 fd; int16 state; int16 timeout; } P_TCP_wait_state;
  16.   struct { int op; uint32 hostaddr; int16 port; } P_UDP_open;
  17.   struct { int op; int16 fd; } P_UDP_close;
  18.   struct { int op; int16 fd; char *buf; int16 buflen; } P_UDP_send;
  19.   struct { int op; int16 fd; } P_CNbyte_count;
  20.   struct { int op; int16 fd; } P_CNget_char;
  21.   struct { int op; int16 fd; } P_CNget_NDB;
  22.   struct { int op; int16 fd; char *buf; int16 len; } P_CNget_block;
  23.   struct { int op; char *hostname; char **realname; uint32 *addrs;
  24.        int16 naddrs; } P_resolve;
  25.   struct { int op; int16 fd; } P_CNgetinfo;
  26.   struct { int op; int32 size; } P_KRmalloc;
  27.   struct { int op; char *mem; } P_KRfree;
  28.   struct { int op; int16 flag; } P_KRgetfree;
  29.   struct { int op; char *mem; int32 newsize; } P_KRrealloc;
  30.   struct { int op; char *var; } P_getvstr;
  31.   struct { int op; char *var; char *value; } P_setvstr;
  32. } Daemon_Op;
  33.  
  34. typedef union {
  35.   int16 ret_int16;
  36.   char *ret_charptr;
  37.   int32 ret_int32;
  38.   NDB  *ret_NDBptr;
  39.   CIB  *ret_CIBptr;
  40. } Daemon_Retval;
  41.  
  42.  
  43. /* daemon ops */
  44. #define OP_TCP_OPEN        1
  45. #define OP_TCP_CLOSE        2
  46. #define OP_TCP_SEND        3
  47. #define OP_TCP_WAIT_STATE    4
  48. #define OP_UDP_OPEN        5
  49. #define OP_UDP_CLOSE        6
  50. #define OP_UDP_SEND        7
  51. #define OP_CNBYTE_COUNT        8
  52. #define OP_CNGET_CHAR        9
  53. #define OP_CNGET_NDB        10
  54. #define OP_CNGET_BLOCK        11
  55. #define OP_RESOLVE        12
  56. #define OP_CNGETINFO        13
  57. #define OP_KRMALLOC        14
  58. #define OP_KRFREE        15
  59. #define OP_KRGETFREE        16
  60. #define OP_KRREALLOC        17
  61. #define OP_GETVSTR        18
  62. #define OP_SETVSTR        19
  63. #define OP_MAX            19
  64.  
  65.  
  66. void send_op __PROTO((Daemon_Op *, Daemon_Retval *));
  67.  
  68. #endif /* PIPE_H */
  69.